﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ComunesMGI.DataTypes;
using MGI.AccesoDatos;

namespace MGI.Logica
{
    public class MgrSistemas
    {
        #region Singleton
        /// <summary>
        /// implementación de singleton para el manejador de sistemas
        /// </summary>
        static private MgrSistemas _instance;

        /// <summary>
        /// implementación de singleton para el manejador de sistemas
        /// retorna una instancia del manejador
        /// </summary>
        /// <returns>MgrSistemas</returns>
        static public MgrSistemas GetInstance()
        {
            if (_instance == null)
            {
                _instance = new MgrSistemas();
            }
            return _instance;
        }
        #endregion



        public List<DataSistema> GetSistemas(int cliCod)
        {
            AccesoDatosFactory accesoDatosFactory = AccesoDatosFactory.GetInstance();
            IDatosSistemas datosSistema = accesoDatosFactory.GetIDatosSistemas();
            return datosSistema.GetSistemas(cliCod);
        }

        public bool ContainFileSistema(string nomCliente, string nomSistema)
        {
            AccesoDatosFactory accesoDatosFactory = AccesoDatosFactory.GetInstance();
            IDatosSistemas datosSistema = accesoDatosFactory.GetIDatosSistemas();
            return datosSistema.ContainFileSistema(nomCliente, nomSistema);
        }


        public DataSistema GetSistema(int sistema)
        {
            AccesoDatosFactory accesoDatosFactory = AccesoDatosFactory.GetInstance();
            IDatosSistemas datosSistema = accesoDatosFactory.GetIDatosSistemas();
            return datosSistema.GetSistema(sistema);
        }
       
    }
}
